'use strict';
const db = uniCloud.database()
// db.command 操作符 对数字 字符串 数组进行操作
const dbCmd = db.command
exports.main = async (event, context) => {
	const {
		user_id,
		article_id
	}  = event
	
	// doc() 获取某个id的用户信息
	const userinfo = await db.collection('user').doc(user_id).get();
	
	const article_id_ids = userinfo.data[0].article_likes_ids;
	let dbCmdFuns = null;
	if(article_id_ids.includes(article_id)){
		dbCmdFuns = dbCmd.pull(article_id)
	}else{
		dbCmdFuns = dbCmd.addToSet(article_id)
	}
	
	//更新
	await db.collection('user').doc(user_id).update({
		//addToSet : 数组更新操作符 给定一个或多个元素 除非数组中已存在该元素 否则添加进数组
		// pull 是删除
		article_likes_ids:dbCmdFuns
	})
	
	//返回数据给客户端
	return {
		code:200,
		msg:'数据更新成功',
		data:userinfo.data[0]
	}
};
